* The unsafe code should be carefully encapsulated, as minimal as possible,
and have a clearly defined and easily checkable semantics.
Each component should be focused on one clear thing only ("single-responsibility rule").
* No matter how users use or mis-use it, it should be safe (e.g. no undefined behavior).
Safety and soundness is critical.
